package com.rfy.user.mapper;


import com.rfy.user.entity.User;
import com.rfy.user.request.UserLoginRequest;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;


/**
 * 用户服务Mapper
 *
 * @author zhang
 */
@Mapper
public interface UserMapper {

    /**
     * 添加用户 注册
     *
     * @param user
     * @return
     */
    Integer insertUser(User user);

    /**
     * 根据用户名或者邮箱和密码查询用户信息 用户登录功能
     *
     * @param loginRequest 用户登录入参
     * @return user 用户实体
     */
    List<User> selectUserByAction(UserLoginRequest loginRequest);

    /**
     * 根据用户id查询用户信息
     *
     * @param id
     * @return user 用户实体
     */
    User selectUserById(Integer id);

    /**
     * 根据用户id更新用户信息
     *
     * @param user
     * @return
     */
    Integer updateUserInfoById(User user);

    /**
     * 根据用户名查询用户是否存在
     *
     * @param user
     * @return
     */
    Integer selectUserByUsername(User user);

}
